/*  1:   */ package org.jetbrains.debugger;
/*  2:   */ 
/*  3:   */ import org.jetbrains.annotations.NotNull;
/*  4:   */ 
/*  5:   */ public abstract class BreakpointTarget
/*  6:   */ {
/*  7:   */   public abstract <R> R accept(Visitor<R> paramVisitor);
/*  8:   */   
/*  9:   */   public static abstract interface Visitor<R>
/* 10:   */   {
/* 11:   */     public abstract R visitScriptName(String paramString);
/* 12:   */     
/* 13:   */     public abstract R visitScript(Script paramScript);
/* 14:   */     
/* 15:   */     public abstract R visitUnknown(BreakpointTarget paramBreakpointTarget);
/* 16:   */   }
/* 17:   */   
/* 18:   */   public static final class ScriptId
/* 19:   */     extends BreakpointTarget
/* 20:   */   {
/* 21:   */     private final Script a;
/* 22:   */     
/* 23:   */     public ScriptId(@NotNull Script paramScript)
/* 24:   */     {
/* 25:38 */       this.a = paramScript;
/* 26:   */     }
/* 27:   */     
/* 28:   */     public <R> R accept(BreakpointTarget.Visitor<R> paramVisitor)
/* 29:   */     {
/* 30:43 */       return paramVisitor.visitScript(this.a);
/* 31:   */     }
/* 32:   */     
/* 33:   */     public boolean equals(Object paramObject)
/* 34:   */     {
/* 35:48 */       if (this == paramObject) {
/* 36:49 */         return true;
/* 37:   */       }
/* 38:51 */       if ((paramObject == null) || (getClass() != paramObject.getClass())) {
/* 39:52 */         return false;
/* 40:   */       }
/* 41:55 */       return this.a.equals(((ScriptId)paramObject).a);
/* 42:   */     }
/* 43:   */     
/* 44:   */     public int hashCode()
/* 45:   */     {
/* 46:60 */       return this.a.hashCode();
/* 47:   */     }
/* 48:   */   }
/* 49:   */   
/* 50:   */   public static final class ScriptName
/* 51:   */     extends BreakpointTarget
/* 52:   */   {
/* 53:   */     private final String a;
/* 54:   */     
/* 55:   */     public ScriptName(@NotNull String paramString)
/* 56:   */     {
/* 57:72 */       this.a = paramString;
/* 58:   */     }
/* 59:   */     
/* 60:   */     public <R> R accept(@NotNull BreakpointTarget.Visitor<R> paramVisitor)
/* 61:   */     {
/* 62:77 */       if (paramVisitor == null) {
/* 63:77 */         throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/debugger/BreakpointTarget$ScriptName", "accept" }));
/* 64:   */       }
/* 65:77 */       return paramVisitor.visitScriptName(this.a);
/* 66:   */     }
/* 67:   */     
/* 68:   */     public boolean equals(Object paramObject)
/* 69:   */     {
/* 70:82 */       if (this == paramObject) {
/* 71:83 */         return true;
/* 72:   */       }
/* 73:85 */       if ((paramObject == null) || (getClass() != paramObject.getClass())) {
/* 74:86 */         return false;
/* 75:   */       }
/* 76:89 */       return this.a.equals(((ScriptName)paramObject).a);
/* 77:   */     }
/* 78:   */     
/* 79:   */     public int hashCode()
/* 80:   */     {
/* 81:94 */       return this.a.hashCode();
/* 82:   */     }
/* 83:   */   }
/* 84:   */ }


/* Location:           E:\idea\
 * Qualified Name:     org.jetbrains.debugger.BreakpointTarget
 * JD-Core Version:    0.7.0.1
 */